<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    
</body>
</html>
<script>
    // 题目1: 对字符串进行排列组合, 得到所有字符的全排列组合(假设所有字符不重复)
    //     函数名：permutation
    //     参数：需要排列组合的字符串
    //     返回值：字符串的所有排列组合数组
    //     例如：permutation("abc") 返回["abc", "acb", "bac", "bca", "cab", "cba"]

   function permutation(str){
     if(str.length==1){
        return [str];
     }
     let res=[];
     let arr =arguments.callee(str.slice(1));
     for(let i=0;i<arr.length;i++){
        let arr1=[];
        for (let j=0;j<arr[i].length+1;j++){
            let newstr =arr[i].slice(0,j)+str[0]+arr[i].slice(j);
            arr1.push(newstr);
        }
        res=res.concat(arr1);
     }
    return res;
   }
  console.log(permutation("abc"));
</script>